#ifndef SUDOKUENVIRONMENT_H_
#define SUDOKUENVIRONMENT_H_

#include "AbstractEnvironment.h"
#include "SudokuData.h"

/**
  * Class that represents sudoku solving environment
  * @author Łukasz Szybka
  */
class SudokuEnvironment : public AbstractEnvironment
{
public:
    SudokuEnvironment(int _populationSize, SudokuData _sudokuData);
    ~SudokuEnvironment();

    QString decodeChromosome(const Chromosome& chrom);

protected:
    void fitnessFunction(Chromosome& chrom);

private:

    SudokuData sudokuData;
};

#endif /*SUDOKUENVIRONMENT_H_*/
